In computer based control systems for controlling manufacturing and process industries, such as chemical plants, oil refineries, pulp and paper mills, steel mills, etc., there is typically a need for integrating a wide range of different applications of different origin. In particular this integration includes integrating user interfaces, so that a user of the system experiences one single interface towards all functions of the system, even though different parts of this interface are provided by different computer-implemented applications. U.S. Pat. No. 6,169,996 disclosed a remote observation system for remote monitoring.
Traditional methods of providing this user interface integration include providing a software environment where user interface components from the different applications are plugged in to provide the integrated user interface. Examples of such technologies include ActiveX and Java Beans.
A conventional industrial control system typically includes one or more computer programs running in real time. Such programs control one or more processes in real time, which means that the control system must have an immediate or very short response time for at least some of the processes at all times. As control over many processes is normally critical from a safety standpoint it is important that the control systems are rigorously tested to eliminate any program execution problems or computer programming code problems that might cause delays or even failure of the control system.
A challenge with current approaches for user interface integration in a control system is that code components from the integrated applications execute in the same environment as components that are critical for the core functions of the control system, which is to control and supervise the industrial process. If any such integrated code component includes a flaw, it could potentially cause the entire user interface environment of the control system to crash or malfunction.